import { NgModule, ModuleWithProviders } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { IonicModule } from 'ionic-angular';
import { CardComponent } from './card/card.component';
import { PlateItemComponent } from "./plate-item/plate-item";
import { PlateComponent } from "./plate/plate.component";
import { SelectComponent } from './select/select.component';
import { HomeCardsComponent } from './home-cards/home-cards.component';
import { SearchBarComponent } from './search-bar/search-bar.component';
import { LabelWithIconComponent } from './label-with-icon/label-with-icon.component';
import { StepComponent, StepComponentProperty } from './step/step.component';
import { ArrearsPayListComponent } from './arrears-pay-list/arrears-pay-list.component';
import { DetailStepComponent } from './detail-step/detail-step.component';
import { UploadFileComponent } from "./upload-file/upload-file.component";
import { StepPathComponent } from "./step-path/step-path.component";
import { ChargeFlowPathComponent } from "./charge-flow-path/charge-flow-path.component";
import { ComponentUtilService } from "./component.util.service";
import { BigpicPreviewSlidersComponent } from "./pic-sliders/bigpic-preview-sliders.component";
import { TimeDownCutPipe } from "./charge-flow-path/charge-flow-path.component";
import { ReloadingCmp } from "./reloading/reloading-component";
import { ReloadingController } from "./reloading/reloading-controller";
import { NumberSliderComponent } from "./number-slider/number-slider.component";
import { RadarComponent } from "./radar/radar.component";
import { RankComponent } from "./rank/rank.component";
import { StrategyComponent } from "./strategy/strategy.component";
import { KeyDataComponent } from "./key-data/key-data.component";
import { CashFlowComponent } from "./cash-flow.page/cash-flow.component";
import {WorldRankingComponent} from "./world-ranking/world-ranking.component";
import { QuotaComponent } from "./quota/quota.component";
import { RealTimeElectricityComponent } from "./real-time-electricity.component/real-time-electricity.component";

// import { NgxEchartsModule } from 'ngx-echarts';

@NgModule({
    entryComponents: [
      PlateItemComponent,
      ReloadingCmp
    ],

    exports: [
      PlateItemComponent,
      CardComponent,
      SelectComponent,
      SearchBarComponent,
      LabelWithIconComponent,
      StepComponent,
      StepPathComponent,
      ChargeFlowPathComponent,
      ArrearsPayListComponent,
      DetailStepComponent,
      UploadFileComponent,
      ReloadingCmp,
      BigpicPreviewSlidersComponent,
      PlateComponent,
      NumberSliderComponent,
      HomeCardsComponent,
      TimeDownCutPipe,
      RadarComponent,
      RankComponent,
      StrategyComponent,
      KeyDataComponent,
      CashFlowComponent,
      WorldRankingComponent,
      RealTimeElectricityComponent,
      QuotaComponent
    ],
    declarations: [
      PlateItemComponent,
      CardComponent,
      SelectComponent,
      SearchBarComponent,
      LabelWithIconComponent,
      StepComponent,
      StepPathComponent,
      ChargeFlowPathComponent,
      ArrearsPayListComponent,
      DetailStepComponent,
      UploadFileComponent,
      TimeDownCutPipe,
      ReloadingCmp,
      BigpicPreviewSlidersComponent,
      PlateComponent,
      NumberSliderComponent,
      HomeCardsComponent,
      RadarComponent,
      RankComponent,
      StrategyComponent,
      KeyDataComponent,
      CashFlowComponent,
      WorldRankingComponent,
      RealTimeElectricityComponent,
      QuotaComponent
    ],
    imports: [
      FormsModule,
      IonicModule,
      // NgxEchartsModule
    ],
    providers: [
      ComponentUtilService,
      ReloadingController
    ]
})
export class UIComponentModule {
    public static forRoot(): ModuleWithProviders {
        return {
            ngModule: UIComponentModule,
            providers: []
        };
    }
}

